using Baci.Net.ToolKit.ArcGISProGeoprocessor.Models;
using Baci.Net.ToolKit.ArcGISProGeoprocessor.Models.Attributes;
using Baci.Net.ToolKit.ArcGISProGeoprocessor.Models.Attributes.DomainAttributes;
using Baci.Net.ToolKit.ArcGISProGeoprocessor.Models.Enums;
using System.Collections.Generic;
using System.ComponentModel;

namespace Baci.ArcGIS._ModelTools._ModelOnly
{
    /// <summary>
    /// <para>Get Field Value</para>
    /// <para>Returns the value of the first row of a table for the specified field.</para>
    /// <para>返回指定字段的表第一行的值。</para>
    /// </summary>    
    [DisplayName("Get Field Value")]
    public class GetFieldValue : AbstractGPProcess
    {
        /// <summary>
        /// 无参构造
        /// </summary>
        public GetFieldValue()
        {

        }

        /// <summary>
        /// 有参构造
        /// </summary>
        /// <param name="_in_table">
        /// <para>Input Table</para>
        /// <para>Input table to get the value from.</para>
        /// <para>要从中获取值的输入表。</para>
        /// </param>
        /// <param name="_field">
        /// <para>Field</para>
        /// <para>Input field to get the value from. The value of the first record will be output.</para>
        /// <para>要从中获取值的输入字段。将输出第一条记录的值。</para>
        /// </param>
        public GetFieldValue(object _in_table, object _field)
        {
            this._in_table = _in_table;
            this._field = _field;
        }
        public override string ToolboxName => "Model Tools";

        public override string ToolName => "Get Field Value";

        public override string CallName => "mb.GetFieldValue";

        public override List<string> AcceptEnvironments => [];

        public override object[] ParameterInfo => [_in_table, _field, _data_type.GetGPValue(), _null_value, _value];

        /// <summary>
        /// <para>Input Table</para>
        /// <para>Input table to get the value from.</para>
        /// <para>要从中获取值的输入表。</para>
        /// <para></para>
        /// </summary>
        [DisplayName("Input Table")]
        [Description("")]
        [Option(OptionTypeEnum.Must)]
        public object _in_table { get; set; }


        /// <summary>
        /// <para>Field</para>
        /// <para>Input field to get the value from. The value of the first record will be output.</para>
        /// <para>要从中获取值的输入字段。将输出第一条记录的值。</para>
        /// <para></para>
        /// </summary>
        [DisplayName("Field")]
        [Description("")]
        [Option(OptionTypeEnum.Must)]
        public object _field { get; set; }


        /// <summary>
        /// <para>Data type</para>
        /// <para>The data type of the output.</para>
        /// <para>输出的数据类型。</para>
        /// <para></para>
        /// </summary>
        [DisplayName("Data type")]
        [Description("")]
        [Option(OptionTypeEnum.optional)]
        public _data_type_value _data_type { get; set; } = _data_type_value._String;

        public enum _data_type_value
        {
            /// <summary>
            /// <para>Address Locator</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Address Locator")]
            [GPEnumValue("Address Locator")]
            _Address_Locator,

            /// <summary>
            /// <para>Address Locator Style</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Address Locator Style")]
            [GPEnumValue("Address Locator Style")]
            _Address_Locator_Style,

            /// <summary>
            /// <para>Analysis Cell Size</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Analysis Cell Size")]
            [GPEnumValue("Analysis Cell Size")]
            _Analysis_Cell_Size,

            /// <summary>
            /// <para>Annotation Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Annotation Layer")]
            [GPEnumValue("Annotation Layer")]
            _Annotation_Layer,

            /// <summary>
            /// <para>Any Value</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Any Value")]
            [GPEnumValue("Any Value")]
            _Any_Value,

            /// <summary>
            /// <para>ArcMap Document</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("ArcMap Document")]
            [GPEnumValue("ArcMap Document")]
            _ArcMap_Document,

            /// <summary>
            /// <para>Areal Unit</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Areal Unit")]
            [GPEnumValue("Areal Unit")]
            _Areal_Unit,

            /// <summary>
            /// <para>BIM File Workspace</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("BIM File Workspace")]
            [GPEnumValue("BIM File Workspace")]
            _BIM_File_Workspace,

            /// <summary>
            /// <para>Boolean</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Boolean")]
            [GPEnumValue("Boolean")]
            _Boolean,

            /// <summary>
            /// <para>Building Discipline Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Building Discipline Layer")]
            [GPEnumValue("Building Discipline Layer")]
            _Building_Discipline_Layer,

            /// <summary>
            /// <para>Building Discipline Scene Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Building Discipline Scene Layer")]
            [GPEnumValue("Building Discipline Scene Layer")]
            _Building_Discipline_Scene_Layer,

            /// <summary>
            /// <para>Building Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Building Layer")]
            [GPEnumValue("Building Layer")]
            _Building_Layer,

            /// <summary>
            /// <para>Building Scene Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Building Scene Layer")]
            [GPEnumValue("Building Scene Layer")]
            _Building_Scene_Layer,

            /// <summary>
            /// <para>CAD Drawing Dataset</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("CAD Drawing Dataset")]
            [GPEnumValue("CAD Drawing Dataset")]
            _CAD_Drawing_Dataset,

            /// <summary>
            /// <para>Calculator Expression</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Calculator Expression")]
            [GPEnumValue("Calculator Expression")]
            _Calculator_Expression,

            /// <summary>
            /// <para>Catalog Root</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Catalog Root")]
            [GPEnumValue("Catalog Root")]
            _Catalog_Root,

            /// <summary>
            /// <para>Cell Size</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Cell Size")]
            [GPEnumValue("Cell Size")]
            _Cell_Size,

            /// <summary>
            /// <para>Cell Size XY</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Cell Size XY")]
            [GPEnumValue("Cell Size XY")]
            _Cell_Size_XY,

            /// <summary>
            /// <para>Composite Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Composite Layer")]
            [GPEnumValue("Composite Layer")]
            _Composite_Layer,

            /// <summary>
            /// <para>Compression</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Compression")]
            [GPEnumValue("Compression")]
            _Compression,

            /// <summary>
            /// <para>Coordinate System</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Coordinate System")]
            [GPEnumValue("Coordinate System")]
            _Coordinate_System,

            /// <summary>
            /// <para>Coordinate Systems Folder</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Coordinate Systems Folder")]
            [GPEnumValue("Coordinate Systems Folder")]
            _Coordinate_Systems_Folder,

            /// <summary>
            /// <para>Coverage</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Coverage")]
            [GPEnumValue("Coverage")]
            _Coverage,

            /// <summary>
            /// <para>Coverage Feature Class</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Coverage Feature Class")]
            [GPEnumValue("Coverage Feature Class")]
            _Coverage_Feature_Class,

            /// <summary>
            /// <para>Data Element</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Data Element")]
            [GPEnumValue("Data Element")]
            _Data_Element,

            /// <summary>
            /// <para>Data File</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Data File")]
            [GPEnumValue("Data File")]
            _Data_File,

            /// <summary>
            /// <para>Database Connections</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Database Connections")]
            [GPEnumValue("Database Connections")]
            _Database_Connections,

            /// <summary>
            /// <para>Dataset</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Dataset")]
            [GPEnumValue("Dataset")]
            _Dataset,

            /// <summary>
            /// <para>Date</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Date")]
            [GPEnumValue("Date")]
            _Date,

            /// <summary>
            /// <para>dBASE Table</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("dBASE Table")]
            [GPEnumValue("dBASE Table")]
            _dBASE_Table,

            /// <summary>
            /// <para>Decimate</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Decimate")]
            [GPEnumValue("Decimate")]
            _Decimate,

            /// <summary>
            /// <para>Diagram Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Diagram Layer")]
            [GPEnumValue("Diagram Layer")]
            _Diagram_Layer,

            /// <summary>
            /// <para>Dimension Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Dimension Layer")]
            [GPEnumValue("Dimension Layer")]
            _Dimension_Layer,

            /// <summary>
            /// <para>Disk Connection</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Disk Connection")]
            [GPEnumValue("Disk Connection")]
            _Disk_Connection,

            /// <summary>
            /// <para>Double</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Double")]
            [GPEnumValue("Double")]
            _Double,

            /// <summary>
            /// <para>Elevation Surface Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Elevation Surface Layer")]
            [GPEnumValue("Elevation Surface Layer")]
            _Elevation_Surface_Layer,

            /// <summary>
            /// <para>Encrypted String</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Encrypted String")]
            [GPEnumValue("Encrypted String")]
            _Encrypted_String,

            /// <summary>
            /// <para>Envelope</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Envelope")]
            [GPEnumValue("Envelope")]
            _Envelope,

            /// <summary>
            /// <para>Evaluation Scale</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Evaluation Scale")]
            [GPEnumValue("Evaluation Scale")]
            _Evaluation_Scale,

            /// <summary>
            /// <para>Extent</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Extent")]
            [GPEnumValue("Extent")]
            _Extent,

            /// <summary>
            /// <para>Extract Values</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Extract Values")]
            [GPEnumValue("Extract Values")]
            _Extract_Values,

            /// <summary>
            /// <para>Feature Class</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Feature Class")]
            [GPEnumValue("Feature Class")]
            _Feature_Class,

            /// <summary>
            /// <para>Feature Dataset</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Feature Dataset")]
            [GPEnumValue("Feature Dataset")]
            _Feature_Dataset,

            /// <summary>
            /// <para>Feature Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Feature Layer")]
            [GPEnumValue("Feature Layer")]
            _Feature_Layer,

            /// <summary>
            /// <para>Feature Set</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Feature Set")]
            [GPEnumValue("Feature Set")]
            _Feature_Set,

            /// <summary>
            /// <para>Field</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Field")]
            [GPEnumValue("Field")]
            _Field,

            /// <summary>
            /// <para>Field Info</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Field Info")]
            [GPEnumValue("Field Info")]
            _Field_Info,

            /// <summary>
            /// <para>Field Mappings</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Field Mappings")]
            [GPEnumValue("Field Mappings")]
            _Field_Mappings,

            /// <summary>
            /// <para>File</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("File")]
            [GPEnumValue("File")]
            _File,

            /// <summary>
            /// <para>Folder</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Folder")]
            [GPEnumValue("Folder")]
            _Folder,

            /// <summary>
            /// <para>Formulated Raster</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Formulated Raster")]
            [GPEnumValue("Formulated Raster")]
            _Formulated_Raster,

            /// <summary>
            /// <para>Fuzzy function</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Fuzzy function")]
            [GPEnumValue("Fuzzy function")]
            _Fuzzy_function,

            /// <summary>
            /// <para>GeoDataServer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("GeoDataServer")]
            [GPEnumValue("GeoDataServer")]
            _GeoDataServer,

            /// <summary>
            /// <para>Geodataset</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Geodataset")]
            [GPEnumValue("Geodataset")]
            _Geodataset,

            /// <summary>
            /// <para>Geometric Network</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Geometric Network")]
            [GPEnumValue("Geometric Network")]
            _Geometric_Network,

            /// <summary>
            /// <para>Geostatistical Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Geostatistical Layer")]
            [GPEnumValue("Geostatistical Layer")]
            _Geostatistical_Layer,

            /// <summary>
            /// <para>Geostatistical Search Neighborhood</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Geostatistical Search Neighborhood")]
            [GPEnumValue("Geostatistical Search Neighborhood")]
            _Geostatistical_Search_Neighborhood,

            /// <summary>
            /// <para>Geostatistical Value Table</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Geostatistical Value Table")]
            [GPEnumValue("Geostatistical Value Table")]
            _Geostatistical_Value_Table,

            /// <summary>
            /// <para>GlobeServer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("GlobeServer")]
            [GPEnumValue("GlobeServer")]
            _GlobeServer,

            /// <summary>
            /// <para>GPServer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("GPServer")]
            [GPEnumValue("GPServer")]
            _GPServer,

            /// <summary>
            /// <para>Graph</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Graph")]
            [GPEnumValue("Graph")]
            _Graph,

            /// <summary>
            /// <para>Graph Data Table</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Graph Data Table")]
            [GPEnumValue("Graph Data Table")]
            _Graph_Data_Table,

            /// <summary>
            /// <para>Group Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Group Layer")]
            [GPEnumValue("Group Layer")]
            _Group_Layer,

            /// <summary>
            /// <para>Horizontal Factor</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Horizontal Factor")]
            [GPEnumValue("Horizontal Factor")]
            _Horizontal_Factor,

            /// <summary>
            /// <para>Image Service</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Image Service")]
            [GPEnumValue("Image Service")]
            _Image_Service,

            /// <summary>
            /// <para>Index</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Index")]
            [GPEnumValue("Index")]
            _Index,

            /// <summary>
            /// <para>INFO Expression</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("INFO Expression")]
            [GPEnumValue("INFO Expression")]
            _INFO_Expression,

            /// <summary>
            /// <para>INFO Item</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("INFO Item")]
            [GPEnumValue("INFO Item")]
            _INFO_Item,

            /// <summary>
            /// <para>INFO Table</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("INFO Table")]
            [GPEnumValue("INFO Table")]
            _INFO_Table,

            /// <summary>
            /// <para>Internet Tiled Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Internet Tiled Layer")]
            [GPEnumValue("Internet Tiled Layer")]
            _Internet_Tiled_Layer,

            /// <summary>
            /// <para>KML Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("KML Layer")]
            [GPEnumValue("KML Layer")]
            _KML_Layer,

            /// <summary>
            /// <para>LAS Dataset</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("LAS Dataset")]
            [GPEnumValue("LAS Dataset")]
            _LAS_Dataset,

            /// <summary>
            /// <para>LAS Dataset Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("LAS Dataset Layer")]
            [GPEnumValue("LAS Dataset Layer")]
            _LAS_Dataset_Layer,

            /// <summary>
            /// <para>Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Layer")]
            [GPEnumValue("Layer")]
            _Layer,

            /// <summary>
            /// <para>Layer File</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Layer File")]
            [GPEnumValue("Layer File")]
            _Layer_File,

            /// <summary>
            /// <para>Layout</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Layout")]
            [GPEnumValue("Layout")]
            _Layout,

            /// <summary>
            /// <para>Line</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Line")]
            [GPEnumValue("Line")]
            _Line,

            /// <summary>
            /// <para>Linear Unit</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Linear Unit")]
            [GPEnumValue("Linear Unit")]
            _Linear_Unit,

            /// <summary>
            /// <para>Long</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Long")]
            [GPEnumValue("Long")]
            _Long,

            /// <summary>
            /// <para>M Domain</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("M Domain")]
            [GPEnumValue("M Domain")]
            _M_Domain,

            /// <summary>
            /// <para>Map</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Map")]
            [GPEnumValue("Map")]
            _Map,

            /// <summary>
            /// <para>Map Server</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Map Server")]
            [GPEnumValue("Map Server")]
            _Map_Server,

            /// <summary>
            /// <para>Map Server Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Map Server Layer")]
            [GPEnumValue("Map Server Layer")]
            _Map_Server_Layer,

            /// <summary>
            /// <para>Mosaic Dataset</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Mosaic Dataset")]
            [GPEnumValue("Mosaic Dataset")]
            _Mosaic_Dataset,

            /// <summary>
            /// <para>Mosaic Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Mosaic Layer")]
            [GPEnumValue("Mosaic Layer")]
            _Mosaic_Layer,

            /// <summary>
            /// <para>Neighborhood</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Neighborhood")]
            [GPEnumValue("Neighborhood")]
            _Neighborhood,

            /// <summary>
            /// <para>Network Analyst Class FieldMap</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Network Analyst Class FieldMap")]
            [GPEnumValue("Network Analyst Class FieldMap")]
            _Network_Analyst_Class_FieldMap,

            /// <summary>
            /// <para>Network Analyst Hierarchy Settings</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Network Analyst Hierarchy Settings")]
            [GPEnumValue("Network Analyst Hierarchy Settings")]
            _Network_Analyst_Hierarchy_Settings,

            /// <summary>
            /// <para>Network Analyst Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Network Analyst Layer")]
            [GPEnumValue("Network Analyst Layer")]
            _Network_Analyst_Layer,

            /// <summary>
            /// <para>Network Data Source</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Network Data Source")]
            [GPEnumValue("Network Data Source")]
            _Network_Data_Source,

            /// <summary>
            /// <para>Network Dataset</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Network Dataset")]
            [GPEnumValue("Network Dataset")]
            _Network_Dataset,

            /// <summary>
            /// <para>Network Dataset Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Network Dataset Layer")]
            [GPEnumValue("Network Dataset Layer")]
            _Network_Dataset_Layer,

            /// <summary>
            /// <para>Network Travel Mode</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Network Travel Mode")]
            [GPEnumValue("Network Travel Mode")]
            _Network_Travel_Mode,

            /// <summary>
            /// <para>Parcel Fabric</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Parcel Fabric")]
            [GPEnumValue("Parcel Fabric")]
            _Parcel_Fabric,

            /// <summary>
            /// <para>Parcel Fabric for ArcMap</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Parcel Fabric for ArcMap")]
            [GPEnumValue("Parcel Fabric for ArcMap")]
            _Parcel_Fabric_for_ArcMap,

            /// <summary>
            /// <para>Parcel Fabric Layer for ArcMap</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Parcel Fabric Layer for ArcMap")]
            [GPEnumValue("Parcel Fabric Layer for ArcMap")]
            _Parcel_Fabric_Layer_for_ArcMap,

            /// <summary>
            /// <para>Parcel Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Parcel Layer")]
            [GPEnumValue("Parcel Layer")]
            _Parcel_Layer,

            /// <summary>
            /// <para>Point</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Point")]
            [GPEnumValue("Point")]
            _Point,

            /// <summary>
            /// <para>Polygon</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Polygon")]
            [GPEnumValue("Polygon")]
            _Polygon,

            /// <summary>
            /// <para>Projection File</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Projection File")]
            [GPEnumValue("Projection File")]
            _Projection_File,

            /// <summary>
            /// <para>Pyramid</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Pyramid")]
            [GPEnumValue("Pyramid")]
            _Pyramid,

            /// <summary>
            /// <para>Radius</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Radius")]
            [GPEnumValue("Radius")]
            _Radius,

            /// <summary>
            /// <para>Random Number Generator</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Random Number Generator")]
            [GPEnumValue("Random Number Generator")]
            _Random_Number_Generator,

            /// <summary>
            /// <para>Raster Band</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Raster Band")]
            [GPEnumValue("Raster Band")]
            _Raster_Band,

            /// <summary>
            /// <para>Raster Calculator Expression</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Raster Calculator Expression")]
            [GPEnumValue("Raster Calculator Expression")]
            _Raster_Calculator_Expression,

            /// <summary>
            /// <para>Raster Catalog</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Raster Catalog")]
            [GPEnumValue("Raster Catalog")]
            _Raster_Catalog,

            /// <summary>
            /// <para>Raster Catalog Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Raster Catalog Layer")]
            [GPEnumValue("Raster Catalog Layer")]
            _Raster_Catalog_Layer,

            /// <summary>
            /// <para>Raster Data Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Raster Data Layer")]
            [GPEnumValue("Raster Data Layer")]
            _Raster_Data_Layer,

            /// <summary>
            /// <para>Raster Dataset</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Raster Dataset")]
            [GPEnumValue("Raster Dataset")]
            _Raster_Dataset,

            /// <summary>
            /// <para>Raster Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Raster Layer")]
            [GPEnumValue("Raster Layer")]
            _Raster_Layer,

            /// <summary>
            /// <para>Raster Statistics</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Raster Statistics")]
            [GPEnumValue("Raster Statistics")]
            _Raster_Statistics,

            /// <summary>
            /// <para>Raster Type</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Raster Type")]
            [GPEnumValue("Raster Type")]
            _Raster_Type,

            /// <summary>
            /// <para>Record Set</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Record Set")]
            [GPEnumValue("Record Set")]
            _Record_Set,

            /// <summary>
            /// <para>Relationship Class</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Relationship Class")]
            [GPEnumValue("Relationship Class")]
            _Relationship_Class,

            /// <summary>
            /// <para>Remap</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Remap")]
            [GPEnumValue("Remap")]
            _Remap,

            /// <summary>
            /// <para>Report</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Report")]
            [GPEnumValue("Report")]
            _Report,

            /// <summary>
            /// <para>Route Measure Event Properties</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Route Measure Event Properties")]
            [GPEnumValue("Route Measure Event Properties")]
            _Route_Measure_Event_Properties,

            /// <summary>
            /// <para>Scene Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Scene Layer")]
            [GPEnumValue("Scene Layer")]
            _Scene_Layer,

            /// <summary>
            /// <para>Semivariogram</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Semivariogram")]
            [GPEnumValue("Semivariogram")]
            _Semivariogram,

            /// <summary>
            /// <para>ServerConnection</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("ServerConnection")]
            [GPEnumValue("ServerConnection")]
            _ServerConnection,

            /// <summary>
            /// <para>Shapefile</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Shapefile")]
            [GPEnumValue("Shapefile")]
            _Shapefile,

            /// <summary>
            /// <para>Spatial Reference</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Spatial Reference")]
            [GPEnumValue("Spatial Reference")]
            _Spatial_Reference,

            /// <summary>
            /// <para>SQL Expression</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("SQL Expression")]
            [GPEnumValue("SQL Expression")]
            _SQL_Expression,

            /// <summary>
            /// <para>String</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("String")]
            [GPEnumValue("String")]
            _String,

            /// <summary>
            /// <para>String Hidden</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("String Hidden")]
            [GPEnumValue("String Hidden")]
            _String_Hidden,

            /// <summary>
            /// <para>Table</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Table")]
            [GPEnumValue("Table")]
            _Table,

            /// <summary>
            /// <para>Table View</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Table View")]
            [GPEnumValue("Table View")]
            _Table_View,

            /// <summary>
            /// <para>Terrain Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Terrain Layer")]
            [GPEnumValue("Terrain Layer")]
            _Terrain_Layer,

            /// <summary>
            /// <para>Text File</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Text File")]
            [GPEnumValue("Text File")]
            _Text_File,

            /// <summary>
            /// <para>Tile Size</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Tile Size")]
            [GPEnumValue("Tile Size")]
            _Tile_Size,

            /// <summary>
            /// <para>Time configuration</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Time configuration")]
            [GPEnumValue("Time configuration")]
            _Time_configuration,

            /// <summary>
            /// <para>Time Unit</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Time Unit")]
            [GPEnumValue("Time Unit")]
            _Time_Unit,

            /// <summary>
            /// <para>TIN</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("TIN")]
            [GPEnumValue("TIN")]
            _TIN,

            /// <summary>
            /// <para>TIN Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("TIN Layer")]
            [GPEnumValue("TIN Layer")]
            _TIN_Layer,

            /// <summary>
            /// <para>Tool</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Tool")]
            [GPEnumValue("Tool")]
            _Tool,

            /// <summary>
            /// <para>Toolbox</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Toolbox")]
            [GPEnumValue("Toolbox")]
            _Toolbox,

            /// <summary>
            /// <para>Topo Features</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Topo Features")]
            [GPEnumValue("Topo Features")]
            _Topo_Features,

            /// <summary>
            /// <para>Topology</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Topology")]
            [GPEnumValue("Topology")]
            _Topology,

            /// <summary>
            /// <para>Topology Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Topology Layer")]
            [GPEnumValue("Topology Layer")]
            _Topology_Layer,

            /// <summary>
            /// <para>Trace Network</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Trace Network")]
            [GPEnumValue("Trace Network")]
            _Trace_Network,

            /// <summary>
            /// <para>Trace Network Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Trace Network Layer")]
            [GPEnumValue("Trace Network Layer")]
            _Trace_Network_Layer,

            /// <summary>
            /// <para>Transformation function</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Transformation function")]
            [GPEnumValue("Transformation function")]
            _Transformation_function,

            /// <summary>
            /// <para>Utility Network</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Utility Network")]
            [GPEnumValue("Utility Network")]
            _Utility_Network,

            /// <summary>
            /// <para>Utility Network Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Utility Network Layer")]
            [GPEnumValue("Utility Network Layer")]
            _Utility_Network_Layer,

            /// <summary>
            /// <para>Variant</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Variant")]
            [GPEnumValue("Variant")]
            _Variant,

            /// <summary>
            /// <para>Vector Tile Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Vector Tile Layer")]
            [GPEnumValue("Vector Tile Layer")]
            _Vector_Tile_Layer,

            /// <summary>
            /// <para>Vertical Factor</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Vertical Factor")]
            [GPEnumValue("Vertical Factor")]
            _Vertical_Factor,

            /// <summary>
            /// <para>Voxel Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Voxel Layer")]
            [GPEnumValue("Voxel Layer")]
            _Voxel_Layer,

            /// <summary>
            /// <para>VPF Coverage</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("VPF Coverage")]
            [GPEnumValue("VPF Coverage")]
            _VPF_Coverage,

            /// <summary>
            /// <para>VPF Table</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("VPF Table")]
            [GPEnumValue("VPF Table")]
            _VPF_Table,

            /// <summary>
            /// <para>WCS Coverage</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("WCS Coverage")]
            [GPEnumValue("WCS Coverage")]
            _WCS_Coverage,

            /// <summary>
            /// <para>Weighted Overlay Table</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Weighted Overlay Table")]
            [GPEnumValue("Weighted Overlay Table")]
            _Weighted_Overlay_Table,

            /// <summary>
            /// <para>Weighted Sum</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Weighted Sum")]
            [GPEnumValue("Weighted Sum")]
            _Weighted_Sum,

            /// <summary>
            /// <para>WMS Map</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("WMS Map")]
            [GPEnumValue("WMS Map")]
            _WMS_Map,

            /// <summary>
            /// <para>WMTS Layer</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("WMTS Layer")]
            [GPEnumValue("WMTS Layer")]
            _WMTS_Layer,

            /// <summary>
            /// <para>Workspace</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Workspace")]
            [GPEnumValue("Workspace")]
            _Workspace,

            /// <summary>
            /// <para>XY Domain</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("XY Domain")]
            [GPEnumValue("XY Domain")]
            _XY_Domain,

            /// <summary>
            /// <para>Z Domain</para>
            /// <para></para>
            /// <para></para>
            /// </summary>
            [Description("Z Domain")]
            [GPEnumValue("Z Domain")]
            _Z_Domain,

        }

        /// <summary>
        /// <para>Null Value</para>
        /// <para>The value to use for null values. The default is 0 for numbers and blank ("") for strings.</para>
        /// <para>用于 null 值的值。数字的默认值为 0，字符串的默认值为 blank （“”）。</para>
        /// <para></para>
        /// </summary>
        [DisplayName("Null Value")]
        [Description("")]
        [Option(OptionTypeEnum.optional)]
        public object _null_value { get; set; } = null;


        /// <summary>
        /// <para>Value</para>
        /// <para></para>
        /// <para></para>
        /// <para></para>
        /// </summary>
        [DisplayName("Value")]
        [Description("")]
        [Option(OptionTypeEnum.derived)]
        public object _value { get; set; }


        public GetFieldValue SetEnv()
        {
            base.SetEnv();
            return this;
        }

    }

}